Method and apparatus for collecting and providing viewer feedback to a broadcast

ABSTRACT

The present invention provides an improved method and apparatus to collect and provide viewer feedback to broadcasts. According to one aspect of the present invention, a rating is generated for a broadcast by a server system. The rating is based at least in part on viewer feedback to the broadcast, and the rating indicates a likelihood of interest in the broadcast for potential subsequent viewers. According to another aspect of the present invention, the rating is provided from the server system to an entertainment system, and the broadcast can be selected for viewing at an entertainment system. In one embodiment, the viewer feedback is received at the entertainment system in response to a feedback questionnaire.

RELATED APPLICATIONS

The present application is a continuation of U.S. patent applicationSer. No. 09/904,825, entitled “Method and Apparatus for Collecting andProviding Viewer Feedback to a Broadcast,” filed Aug. 20, 2001, which isa continuation of U.S. patent application Ser. No. 09/186,302, entitled“Method and Apparatus for Collecting and Providing Viewer Feedback to aBroadcast,” filed Nov. 4, 1998, now U.S. Pat. No. 6,317,881, theentirety of which are incorporated by reference in the presentapplication.

BACKGROUND OF THE INVENTION

1. Field of the Invention

The present invention pertains to the field of broadcast systems. Moreparticularly, this invention relates to the art of collecting andproviding viewer feedback to a broadcast.

2. Background

The volume and variety of television, radio, and internet programminghas increased considerably in recent years. For instance, digital cablesystems and satellite antenna systems now offer hundreds of channels ofprogramming twenty-four hours a day. Similarly, the Internet providesaccess to countless on-line interactive events. Even with a regularantenna, the airwaves in many markets are crammed full of dozens oftelevision and radio channels. Sorting through all of the viewing,listening, and interactive options can be time consuming andfrustrating.

A programming guide may be helpful, but most programming guides merelylist broadcasts by time slot and channel. With hundreds of channels,including free channels, various categories of pay channels, pay perview channels, view on demand channels, etc., a programming guide canbecome very long and confusing. A viewer could spend a considerableamount of time reading a list of broadcasts for a given time slot anddeciphering which broadcasts are actually available to the viewer.

All too often, a viewer may simply choose to flip through a fewchannels, or a great many channels as the case may be, until he or shefinds a broadcast that he or she can tolerate. When the viewer losesinterest, he or she may flip through some more channels, aimlesslylooking for something of interest. Meanwhile, advertisers, televisionproducers, and other programming providers want their broadcasts toreach the most receptive audiences possible. A viewer with hundreds ofchannels to choose from, who aimlessly flips through channels, caneasily miss an appealing broadcast or advertisement. So, both viewersand programming providers want to be able to identify broadcasts thatare likely to be of interest to particular viewers.

One way to predict how likely it is that a particular viewer will find abroadcast interesting is to examine feedback from previous viewers;especially previous viewers who have similar characteristics. Forinstance, if 85% of female viewers ages 25 to 35 highly recommend abroadcast, a significant portion of subsequent female viewers ages 25 to35 are likely to enjoy the broadcast as well. For years, programmingproviders have used focus groups, surveys, Nielson ratings, etc. in anattempt to predict viewer preferences to make broadcasts appeal to thewidest possible audience or to target certain audiences. Theseapproaches have their limitations, however. For instance, they have donelittle to help viewers find the broadcasts that are most likely to beinteresting to them. Therefore, both viewers and programming providersneed an improved method and apparatus to collect and provide viewerfeedback to a broadcast based on viewer characteristics.

SUMMARY OF THE INVENTION

The present invention provides an improved method and apparatus tocollect and provide viewer feedback to broadcasts. According to oneaspect of the present invention, a rating is generated for a broadcastby a server system. The rating is based at least in part on viewerfeedback to the broadcast, and the rating indicates a likelihood ofinterest in the broadcast for potential subsequent viewers. Access tothe rating is then provided so that predications can be made as towhether or not the broadcast will be of interest to potential subsequentviewers.

According to another aspect of the present invention, the rating isprovided from the server system to an entertainment system, and thebroadcast can be selected for viewing at the entertainment system basedon the rating generated by the server system. In one embodiment, viewerthe feedback is received at the entertainment system in response to afeedback questionnaire.

BRIEF DESCRIPTION OF THE DRAWINGS

Examples of the present invention are illustrated in the accompanyingdrawings. The accompanying drawings, however, do not limit the scope ofthe present invention. Like references in the drawings indicate similarelements.

FIG. 1 illustrates one embodiment of the present invention.

FIG. 2 demonstrates one embodiment of collecting and providing feedback.

FIG. 3 demonstrates another embodiment of providing feedback.

FIG. 4 illustrates one embodiment of a news review questionnaire.

FIG. 5 illustrates one embodiment of an output format based on the newsreview feedback.

FIG. 6 illustrates one embodiment of a movie review questionnaire.

FIG. 7 illustrates one embodiment of an output format based on the moviereview feedback.

FIG. 8 illustrates one embodiment of a hardware system for entertainmentsystem 100.

FIG. 9 illustrates one embodiment of a hardware system for systemcontroller 110.

DETAILED DESCRIPTION

FIG. 1 illustrates one embodiment of the present invention. The presentinvention collects viewer feedback to a broadcast and generates a ratingfor the broadcast based at least in part on the viewer feedback and, incertain embodiments, characteristics of the viewer. The rating indicateshow likely it is that potential subsequent viewers will be interested inthe same broadcast or other broadcasts in a series. Rating informationcan be collected from multiple viewers and made available to potentialsubsequent viewers and programming providers. A broadcast may haveseveral categorized ratings based on characteristics of the viewers. Forinstance, in one embodiment, a broadcast rating may indicate that 93% ofchildren ages 4 to 6 of the 5279 who responded enjoyed the broadcast andwould like to see it again, 23% of adults ages 25 to 35 of the 2497 whoresponded enjoyed the broadcast and would recommend it for children, 6%of adults over age 75 of the 238 who responded enjoyed the broadcast andwould recommend it for children, etc.

As discussed below in more detail, entertainment system 100 of FIG. 1represents a wide variety of audio, video, and interactive mediasystems. Under the control of system controller 110, entertainmentsystem 100 collects viewer feedback from viewer 130 regarding abroadcast by providing questionnaire 115 and receiving viewer feedback120. A broadcast may include a wide range of programming including anews segment, a situation comedy, a movie, a documentary, a commercialadvertisement, an on-line interactive event, etc.

Entertainment system 100 sends the viewer feedback to programming guideserver 170 over communications medium 150. Programming guide server 170then generates a rating for the broadcast based at least in part on thefeedback. The rating can also be based on feedback from additionalviewers 180. The rating indicates a likelihood of interest in thebroadcast for potential subsequent viewers. Ratings can be generated formultiple broadcasts and stored at programming guide server 170 where theratings can be accessible to potential subsequent viewers andprogramming service providers 160 over communications medium 150.

Communications medium 150 represents a wide variety of media, includingcable, optical fiber, satellite transmissions, telephone lines, radiofrequency transmissions, and network communications such as over theInternet. Communications can also be digital and/or analog.

FIG. 2 demonstrates one embodiment of the present invention. First, instep 210, system controller 110 provides a feedback questionnaire toviewer 130. In one embodiment, questionnaire 130 is provided at any timeduring or shortly after a broadcast at the request of viewer 130. Forinstance, viewer 130 may have particularly enjoyed or hated a broadcast,so he or she may voluntarily take a moment to offer feedback.Alternately viewer 130 may be prompted to give feedback, so that viewer130 can either give feedback or positively decline to give feedback.

In some embodiments, programming service providers 160 and/orprogramming guide server 170 may offer incentives to viewer 130 toencourage viewer 130 to give feedback. For instance, the more feedbackprogramming guide server 170 receives, the more accurate the ratings arelikely to be, and the more valuable the ratings are likely to be forprogramming service providers 160 and potential subsequent viewers. Anincentive may be a small discount on service charges for each feedbackresponse. Alternately, feedback incentives may be provided for onlycertain broadcasts, depending on how much feedback is needed or wanted.For a new broadcast, the broadcast could be provided to a test audienceto obtain ratings prior to wide distribution. In which case, feedbackmay be required of test audience viewers or additional incentives may beoffered.

In step 220, system controller 110 receives viewer feedback 120 inresponse to questionnaire 115. Questionnaire 115, and hence viewerfeedback 120, can take several different forms, as discussed below withreference to FIGS. 4 and 6. For instance, questionnaire 115 can bespecifically designed to gather particular information about abroadcast, or it can be a single generic question, such as “Did you likethis broadcast?”

In step 230, system controller 110 provides the feedback to programmingguide server 170 over communications medium 150. As discussed below withreference to FIGS. 4 and 6, the characteristic information can also begathered along with the feedback to the broadcast. For instance,specific questions can be added to questionnaire 115 to collectparticular characteristic information.

In alternate embodiments, viewer characteristics can also be stored atsystem controller 110 or programming guide server 170. Various meanscould be used to automatically identify viewer 130, for instance, usingface recognition software. Alternately, questionnaire 115 could promptviewer 130 for a some form of viewer identification such as anidentification number, and the identification number could be used toretrieve an anonymous viewer characteristic file. A viewercharacteristic file could store information such as age, gender, maritalstatus, family size, geographic location, education level, income level,etc. It could also store information that may be useful to programmingservice providers 160, such as the hardware capabilities ofentertainment system 100 and viewer 130's viewing habits, includingchannel preferences, viewing duration, types of Internet web sitesvisited, etc. A viewer characteristics file could also be updated overtime as viewing habits change, the viewer grows older, component areadded or deleted from entertainment system 100, a sport season beingsand ends, etc. If a viewer's characteristics file were remotelyaccessible, the characteristic file could be used for the viewer at anyof a number of different entertainment systems, for instance, at theviewers home, work, neighbor's house, a hotel, etc.

In step 240, programming guide server 170 generates a rating of thebroadcast based at least in part on viewer feedback 120. The rating canalso be based on the characteristic information about the viewer. Theratings, as discussed below with reference to FIGS. 5 and 7, can be usedin several different forms. For instance, separate ratings may begenerated for different categories of viewers.

In step 250, programming guide server 170 provides the ratings topotential subsequent viewers and programming providers 160. In oneembodiment, ratings are downloaded to potential subsequent viewers alongwith programming information. For instance, one embodiment ofprogramming guide server 170 provides programming guides to viewers on aregular basis, and ratings for some or all of the programs are providedalong with the programming guide. In which case, the variousentertainment systems, used by potential subsequent viewers includingviewer 130 and additional viewers 180, may perform a variety ofoperations using the ratings information. Similarly, ratings informationcan be downloaded to programming service providers 160 on a regularbasis. Programming service providers 160 may also perform a variety ofoperations using the ratings information.

In alternate embodiments, ratings information is stored centrally atprogramming guide server 170. In which case, programming guide server170 performs various operations using the ratings information and onlyprovides the results of the operations to potential subsequent viewersand/or programming service providers 160. Ratings information may alsobe provided in real time. For instance, a viewer's screen may include afeedback meter that is repeatedly updated as ratings are generated fromfeedback provided by other viewers, for instance, in the viewer'scommunity. In which case, the viewer could see how the other viewers areresponding to a program as the viewer is watching it.

FIG. 3 demonstrates one embodiment of providing ratings to potentialsubsequent viewers. The method could be performed centrally byprogramming guide server 170 or locally by the various entertainmentsystems of potential subsequent viewers. In the illustrated embodiment,a potential viewer is consulting a programming guide provided byprogramming guide server 170. In step 310, viewer characteristicinformation is received. The viewer may provide this information in anumber of different ways, including menu selections, voice commands,etc. Alternately, the information may be stored in a viewercharacteristic file, stored locally or remotely. A viewer characteristicfile may be selected automatically, based on face recognition forinstance, or the viewer may be prompted to enter some form ofidentification. Viewer characteristic information may also be acombination of retrieved data and user provided data. For instance, theviewer may be in the mood for a drama or a situation comedy. In whichcase, the viewer may input his or her preference, and a file may beretrieved that includes a list of the viewer's favorite dramas andsituation comedies, as well as other characteristic information.

In step 320, the respective system controller or programming guideserver 170 assembles a list of broadcasts based on a comparison ofbroadcast classification data and viewer characteristics. The broadcastclassification data, as discussed below with reference to FIG. 7, caninclude a channel and time slot, a title, a synopsis, a parentalguidance warning, etc. For instance, the characteristic information mayinclude a list of programming sources or channels that are available tothe particular user at the particular entertainment system. In whichcase, the list of broadcasts may include only those broadcasts that areavailable. For example, if a viewer's entertainment system does notreceive satellite broadcasts, then satellite broadcasts can be left offthe list.

Assembling the list can be based on numerous additional characteristics.In one embodiment, a face recognition utility could be used toautomatically retrieve viewer characteristic files for a number ofconcurrent viewers and automatically cross-reference thecharacteristics. For instance, if children are among the viewers in theroom, characteristic files for the children may instruct the systemcontroller to lock out broadcasts having adult content that would not besuitable for children.

In one embodiment, however, all broadcasts currently being aired, soonto be aired, currently available on pay per view or view on demand, etc.are listed even if the viewer does not have access to all of thebroadcasts. For instance, inaccessible broadcasts could be listed in adifferent type face than accessible broadcasts. In this situation, aviewer may be encouraged to purchase access to more programming sourcesin the future if the viewer knows what he or she is missing on thosechannels.

Then, in step 330, each broadcast in the list can be ranked according toviewer characteristics and ratings. The ratings categories can be verydetailed. For instance, a category could be limited to viewers whocharacteristically enjoy the same dramas and situation comedies as thepotential viewer. The program with the highest rating in the category isranked highest. Numerous additional viewer characteristics could also beused to identify which rating category to use. For instance, the ratingcategories could include viewers ages 45 to 55, viewers in metropolitanareas of Europe, viewers who play role-playing games on the Internet,etc. The possibilities for viewer characteristic categories arevirtually limitless.

Viewer characteristics for multiple simultaneous viewers can also becross-referenced. Various aggregation techniques could be used tocombine ratings. For instance, in one embodiment, if a viewer'scharacteristics match several ratings categories, the weighted averageof the ratings could be used for a particular broadcast. In one example,viewer characteristics match three categories. In category A, 50% of the500 responses were positive for the particular broadcast. In category B,75% of the 2000 responses were positive. In category C, 90% of the 200responses were positive. For this particular set of ratings categories,the weighted average for the broadcast is 71.481% positive.

Two simultaneous viewers, however, may have only categories A and C incommon. In which case, the weighted average for both viewers togetherfor the particular broadcast is 61.429% positive. If simultaneousviewers have no ratings categories in common, broadcasts could be rankedand listed separately for each viewer, or ranked separately but listedtogether in different type faces.

Once all the broadcasts have been ranked, the ranked list of broadcastscan be provided in step 340. The first broadcast on the list is intendedto be the most likely broadcast that is of interest to the viewer. Thus,the viewer does not have to sort through a vast array of programmingchoices.

Similarly, programming service providers 160 have more information topredict which broadcasts will appeal to particular target audiences. Inone embodiment, programming service providers 160 have access toanonymous viewer characteristic information. In which case, programmingservice providers can target advertise broadcasts directly to viewersfor whom the broadcast ranks highly. For instance, when a viewerdownloads a programming guide, the guide may include a tailor-made listof broadcasts that are likely to appeal to the specific viewer. Separatelists could be provided for each viewer who uses a particularentertainment system.

FIG. 4 illustrates one embodiment of a questionnaire. In the illustratedembodiment, the questionnaire is designed to collect specific types ofinformation regarding a news segment. Here, the news segment is part ofa national address given by the President of the United States. In oneembodiment, the questionnaire may be automatically provided at the endof the broadcast to a test audience in order to prompt the test audiencefor feedback. Alternately, a viewer of the broadcast may volunteer toprovide feedback. In which case, the viewer may press a button on aremote control or a keyboard, or issue a voice command, which interruptssystem controller 110.

In response, system controller 110 identifies the broadcast. In oneembodiment, the broadcast currently being viewed is identified.Alternately, the broadcast can be identified by prompting the viewer toidentify the broadcast from a list of recently viewed broadcasts. Thensystem controller 110 can access a storage medium to retrieve a specificquestionnaire, if one exists, or a generic questionnaire for thebroadcast. The storage medium may store hundreds of questionnaireslocally which were downloaded along with a programming guide fromprogramming guide server 170. Alternately, system controller 110 mayaccess programming guide server 170 to download questionnaires asrequests for feedback are received.

In the illustrated embodiment, the specific questionnaire includes abroadcast synopsis so that the viewer can verify he or she is providingfeedback to the correct broadcast. The questionnaire also includesquestions for gathering characteristic information in addition tofeedback questions. Once the questionnaire is completed and submitted,the information can be sent to programming guide server 170. Additionalcharacteristic information may also be sent, for instance, from a viewercharacteristics file. In certain embodiments, several responses may bestored for several broadcasts before being sent to programming guideserver 170.

FIG. 5 illustrates one embodiment of an output format that may be usedby a programming service provider. The ratings are categorized accordingto certain characteristics that are important to the programmingprovider. For instance, the results may help a politically motivatedprogramming provider to decide whether or not to distribute thebroadcast to a wider audience, and if so, to which audience thebroadcast should be targeted based on viewer characteristics.

The feedback can also be used to make changes in the presentation beforethe broadcast is aired again or made available to a wider audience. Inone embodiment, feedback could be collected from viewers during a livepresentation. In which case the ratings could be displayed to thepresenter or the writer of the presentation in, for instance, a bargraph format so the ratings would be easy to read. Then, based on thefeedback, the presenter or writer may choose to make mid-course contentchanges.

FIG. 6 illustrates one embodiment of a movie review questionnaire. Thequestionnaire includes title, genre, and synopsis information, all ofwhich could be taken from a programming guide, and could be included ina generic movie review questionnaire. The illustrated questionnaire,however, includes specific questions for this particular movie. Forinstance, the programming providers want to know if viewers areinterested in more movies about the same character, and differentquestions are posed to children than parents.

FIG. 7 illustrates one output format using the ratings generated fromthe questionnaire of FIG. 6. At the top portion of the screen, a viewerindicates some characteristics. Here, the viewer is interested inanimated children's stories with some educational content. The viewer is10 years old. Additional characteristic information may be supplied froma viewer characteristics file. The lower portion of the screen listssearch results from among the broadcasts currently available. The listincludes the title and synopsis of each broadcast as well as ratingsinformation. Based on the characteristics of the viewer, the firstbroadcast in the list is intended to be the most likely to beinteresting to the viewer.

In alternate embodiments, the questionnaire and output screens can bedisplayed in pop-up windows, full screen displays, side-bar displays,etc. The questionnaire and output screens may include many additionalforms of broadcast classification data such as a broadcastidentification number, the producer, the distributor, the length of thebroadcast, a parental guidance warning, etc. The broadcastidentification information may be downloaded with a programming guide orretrieved individually from programming guide server 170.

FIG. 8 is a block diagram illustrating the system components of anexemplary entertainment system 100 of FIG. 1. System 100 includestelevision/display device 802, video recorder/playback device 806,digital video disk (DVD, also referred to as digital versatile disk)recorder/playback device 814, audio/video tuner and/or amplifier 810,audio playback/recorder device 822, and compact disc (CD) player 812,all coupled to a common input/output (I/O) bus 808. It is to beappreciated that the use of the common I/O bus 808 is for ease ofexplanation in the diagram only, and that a number of alternative meansof routing input and output signals may be beneficially employed. Forexample, audio input and output could be routed with an appropriatenumber of independent audio “patch” cables, video signals may be routedwith independent coaxial cables, and control signals may be routed alonga two-wire serial line, or through infrared (IR) communication signalsor radio frequency (RF) communication signals. By way of furtherexample, audio, video, and/or control signals may also be routed alongone or more buses in accordance with the Universal Serial BusSpecification, Revision 1.0 (Jan. 15, 1996), or the High PerformanceSerial Bus IEEE Standard 1394, IEEE std. 1394-1995, draft 8.0v3,approved Dec. 12, 1995.

In addition, system 100 includes speaker system 816, microphone 818,video camera 820 and a wireless input/output control device 832. In oneembodiment, wireless I/O control device 832 is an entertainment systemremote control unit which communicates with the components of system 100through IR signals. In another embodiment, wireless I/O control device832 may be a wireless keyboard and/or cursor control device thatcommunicates with the components of system 100 through IR signals or RFsignals. In yet another embodiment, wireless I/O control device 832 maybe an IR or RF remote control device similar in appearance to a typicalentertainment system remote control with the added feature of atrack-ball or other cursor control mechanism that allows a user toposition a cursor on a display of system 100.

At the core of system 100 is system controller 110 incorporated with thefeatures of the present invention as discussed above and configured tocontrol a variety of features associated with the system components. Asdepicted, system controller 110 is coupled to each of the systemcomponents, as necessary, through I/O bus 808. In one embodiment, inaddition to or in place of I/O bus 808, system controller 110 may beconfigured with a wireless communications transmitter (or transceiver),which is capable of communicating with the system components via IRsignals or RF signals 808′. Regardless of the control medium, systemcontroller 110 is configured to control each of the entertainment systemcomponents of system 100, although it is understood that each of thecomponents may be individually controlled with wireless I/O device 832.

System controller 110 retrieves and stores entertainment programminginformation available from a wide variety of sources. During operationof system 100, system controller 110 dynamically configures theoperating parameters of system 100 and offers additional value addedfeatures to enhance the user's enjoyment of system 100, such as featuresof the present invention as discussed above. In one embodiment, systemcontroller 110 may be a computer system incorporated with the teachingsof the present invention, as will be discussed in further detail below.In another embodiment, system controller 110 may be a “set-top” boxendowed with the necessary processing power and incorporated with theteachings of the present invention. Regardless of the particularembodiment, system controller 110 may also be referred to as a“convergence system” designed to integrate the world of entertainmentsystems and computing platforms to achieve the beneficial results suchas the present invention.

Although the present invention is described in the context of theexemplary embodiments presented in the figures and based on thedescriptions, those skilled in the art will appreciate that the presentinvention is not limited to these embodiments and may be practiced in avariety of alternate embodiments. Accordingly, the innovative featuresof the present invention may be practiced in a system of greater orlesser complexity than that of the system depicted in FIG. 8. By way ofexample, devices may be added to system 100, or devices (e.g., videocamera 820, microphone 818, DVD recorder/playback device 814, etc.) maybe removed from system 100.

As illustrated in FIG. 8, system 100 can be configured to receiveaudio/video programming input from a wide variety of sources. In oneembodiment, system 100 receives programming input from any or all of thefollowing sources: cable broadcast 824, satellite broadcast 826 (e.g.,via a satellite dish), very high frequency (VHF) or ultra high frequency(UHF) radio frequency communication of the broadcast networks 834 (e.g.,via an aerial antenna), and/or the telephone/computer network interface828. Further, it will be appreciated by those skilled in the art thatcable broadcast input 824, satellite broadcast input 826 and VHF/UHFinput 834 may include analog and/or digital programming. Additionally,audio/video programming may be received from a CD-ROM, DVD, or otherdigital or analog storage device via a playback device of system 100(e.g., DVD recorder/playback device 814). The Internet, an entertainmentnetwork, or other network may also provide audio/video programming, via,for example, interface 828.

In addition to programming input, system 100 is also configured with anumber of general purpose control outputs 830 which may be configured tocontrol any number of devices. In one embodiment, for example, as systemcontroller 804 configures system 100 to display a movie, it may also dimthe lights in the room to a predetermined level to further enhance theviewing environment. Control circuitry which allows a computing deviceto control, for example, lighting, thermostat settings, and otherhousehold appliances (via, for example, the electrical wiring in ahouse) are well known in the art and thus will not be described further.

Except for the incorporated teachings of the present invention asdescribed above, system controller 110 is intended to represent a broadcategory of computing devices known in the art. An example of such acomputing device is a desktop computer system equipped with a highperformance microprocessor(s), such as the Pentium® processor, Pentium®Pro processor, or Pentium® II processor manufactured by and commonlyavailable from Intel Corporation of Santa Clara, Calif. Another exampleof such a computing device is an Internet “appliance” device, such as aWebTV™ Internet Terminal available from Sony Electronics Inc. of ParkRidge, N.J., or Philips Consumer Electronics Company of Knoxville, Tenn.It is to be appreciated that the housing size and design for systemcontroller 110 may be altered, allowing it to better visually fit intosystem 100.

It is also to be appreciated that the several entertainment systemcomponents depicted in FIG. 8 can be beneficially combined. By way ofexample, system controller 110 could be integrated intotelevision/display device 802, DVD recorder/playback device 814, oraudio/video tuner and amplifier 810.

FIG. 9 illustrates one embodiment of a computing device suitable for usewith the present invention. According to one implementation, systemcontroller 110 of FIG. 1 is a computing device 900 of FIG. 9. In theillustrated embodiment of FIG. 9, device 900 includes processor 902 andcache memory 904 coupled to each other as shown. Additionally, device900 includes high performance input/output (I/O) bus 906 and standardI/O bus 908. Host bridge 910 couples processor 902 to high performanceI/O bus 906, whereas I/O bus bridge 912 couples the two buses 906 and908 to each other. Coupled to bus 906 are network/communicationinterface 924 and system memory 914. Coupled to bus 908 is mass storage920, keyboard and pointing device 922, and I/O ports 926. Collectively,these elements are intended to represent a broad category of hardwaresystems, including but not limited to general purpose computer systemsbased on the Pentium® processor, Pentium® Pro processor, or Pentium® IIprocessor, manufactured by Intel Corporation of Santa Clara, Calif.

In one embodiment, various electronic devices are also coupled to highperformance I/O bus 906. As illustrated, analog tuner/digitalsatellite/cable devices 928, are also coupled to high performance I/Obus 906 to allow device 900 to “tune” to various programming inputchannels.

These elements 902-928 perform their conventional functions known in theart. In particular, network/communication interface 924 is used toprovide communication between device 900 and any of a wide range ofconventional networks, such as an Ethernet, token ring, the Internet,etc. It is to be appreciated that the circuitry of interface 924 isdependent on the type of network the device 900 is being coupled to.

Mass storage 920 is used to provide permanent storage for the data andprogramming instructions to implement the above described functions,whereas system memory 914 is used to provide temporary storage for thedata and programming instructions when executed by processor 902. I/Oports 926 are one or more serial and/or parallel communication portsused to provide communication between additional peripheral deviceswhich may be coupled to device 900.

It is to be appreciated that various components of device 900 may bere-arranged. For example, cache 904 may be on-chip with processor 902.Alternatively, cache 904 and processor 902 may be packaged together as a“processor module”, with processor 902 being referred to as the“processor core”. Furthermore, certain implementations of the presentinvention may not require nor include all of the above components. Forexample, mass storage 920, keyboard and pointing device 922, and/ornetwork/communication interface 924 may not be included in device 900.Additionally, the peripheral devices shown coupled to standard I/O bus908 may be coupled to high performance I/O bus 906; in addition, in someimplementations only a single bus may exist with the components ofdevice 900 being coupled to the single bus. Furthermore, additionalcomponents may be included in device 900, such as additional processors,storage devices, buses, or memories.

In one embodiment, the present invention is implemented as a series ofsoftware routines run by device 900 of FIG. 9. These software routinescomprise a plurality or series of instructions to be executed by aprocessor in a hardware system, such as processor 902 of FIG. 9.Initially, the series of instructions are stored on a storage device,such as mass storage 920. It is to be appreciated that the series ofinstructions can be stored using any conventional storage medium, suchas a diskette, CD-ROM, magnetic tape, DVD, laser disk, ROM, Flashmemory, etc. It is also to be appreciated that the series ofinstructions need not be stored locally, and could be received from aremote storage device, such as a server on a network, vianetwork/communication interface 924. The instructions are copied fromthe storage device, such as mass storage 920, into memory 914 and thenaccessed and executed by processor 902. In one implementation, thesesoftware routines are written in the C++ programming language. It is tobe appreciated, however, that these routines may be implemented in anyof a wide variety of programming languages.

In alternate embodiments, the present invention is implemented indiscrete hardware or firmware. For example, one or more applicationspecific integrated circuits (ASICs) could be programmed the functionsof the present invention. By way of another example, the presentinvention can be implemented in one or more ASICs of an additionalcircuit board for insertion into hardware system 900 of FIG. 9.

In one embodiment, hardware system 900 includes control circuitry toretrieve a questionnaire from system memory 914, mass storage 920, orprogramming guide server 170 over network/communication interface 924.Processor 902 or some other form of hardware device like a digitalsignal processor (DSP) or one or more ASICs may comprise the controlcircuitry. The questionnaire is retrieved in response to a feedbackrequest. As discussed above, a feedback request may be generatedautomatically, for instance at the end of a particular broadcast, or ondemand by a viewer. The questionnaire can be provided to viewer 130 overI/O ports 926 using a viewer interface displayed on television/displaydevice 802. The user interface may also be provided over speaker system816, and viewer input may be received from a cursor control device ontelevision/display device 802, a keypad, for instance on wireless I/Odevice 832, or voice recognition through microphone 818.

After reading the forgoing, those skilled in the art will recognize thata number of alternative embodiments are also enabled. For instance,programming guide server 170 may be a distributed application with adifferent server for each of several different regions or entertainmentsystems. In another embodiment, programming guide server 170 could alsobe combined with programming service providers 160.

In certain embodiments, ratings may not always be publicly available,depending on the type of broadcast. For instance, ratings for acommercial advertisement may only be available to the programmingprovider who aired the commercial. Furthermore, programming providersmay be able to request that particular ratings be made unavailable. Forinstance, if ratings are very bad, it may be better to air a broadcastwith no ratings rather than bad ratings.

Thus, a method and apparatus to collect and provide feedback to abroadcast is described. Whereas many alterations and modifications ofthe present invention will be comprehended by a person skilled in theart after having read the foregoing description, it is to be understoodthat the particular embodiments shown and described by way ofillustration are in no way intended to be considered limiting.Therefore, references to details of particular embodiments are notintended to limit the scope of the claims.

What is claimed is:
 1. A viewer entertainment system, comprising: astorage medium to store a viewer characteristics file associated with aviewer and a survey that is presented to the viewer on a display, thedisplay being communicatively coupled to the viewer entertainmentsystem; control circuitry to provide the survey to the viewer, thecontrol circuitry retrieving the survey from the storage medium inresponse to a request from the viewer and displaying the survey to theviewer on the display; a viewer interface to identify the viewer and toreceive viewer feedback based on the survey; and a communicationsinterface to provide the viewer characteristics file associated with theviewer and the viewer feedback to a server system and to receive aranked programming guide from the server system in response to theviewer characteristics file and the viewer feedback, the received rankedprogramming guide selected based in part on the viewer feedback and alikelihood of interest in available broadcasts for based on a pluralityof viewer characteristics files associated with a plurality of viewersidentified as being viewers who are currently viewing the sameentertainment system together, wherein the viewers who are currentlyviewing the same entertainment system together comprise viewercharacteristic categories in common and the ranked programming guide isfurther based on a weighted average of the viewers who are currentlyviewing the same entertainment system together.
 2. The system of claim 1further comprising a remote control unit for a viewer of the display torequest the survey and to provide feedback based on the survey.
 3. Thesystem of claim 1 wherein the communications interface comprisesinternet, cable television line, twisted pair line, fiber optic line, orwide area network.
 4. The system of claim 1 wherein the communicationsinterface provides viewer characteristic information to the serversystem along with the viewer feedback.
 5. The system of claim 1 furthercomprising a register containing information regarding the system of theviewer and wherein the communications interface provides hardwarecapabilities information from the register to the server system alongwith the viewer feedback, the programming also selected based in part onthe hardware capabilities information.
 6. A server system, comprising: acommunications interface to receive a viewer characteristics fileincluding viewer characteristic information associated with a viewer andviewer feedback to a survey presented to the associated viewer on adisplay, a processor to generate a display of the viewer feedback to thesurvey, the display including the viewer characteristic information; anda programming guide server to provide a ranked programming guide to theviewer on a display through a communications interface that is capableof communicating with a viewer entertainment system, wherein the rankedcontents of the programming guide are selected based in part on theviewer feedback to the survey and a plurality of viewer characteristicsfiles associated with viewers identified as being viewers who arecurrently viewing the same entertainment system together, wherein theviewers who are currently viewing the same entertainment system togethercomprise viewer characteristic categories in common and the rankedprogramming guide is further based on a weighted average of the viewerswho are currently viewing the same entertainment system together.
 7. Theserver system of claim 6 further comprising a storage medium to storeinformation regarding available broadcasts and viewer feedback to thesurvey and viewer characteristics files.
 8. The server system of claim 6wherein the server system additionally is to provide video content tothe viewer.
 9. The server system of claim 6 wherein the processor isadditionally to assemble a list of available videos using viewercharacteristic information from a viewer characteristics file for aselected viewer.
 10. A method, comprising: providing a survey to bedisplayed on a display in response to a request from a viewer to accessthe survey based on the request being communicated through anentertainment system to a server system that provides the survey;receiving, on a server system, a viewer characteristics file and viewerfeedback in response to the survey, through a communications interfaceof the entertainment system; and providing a ranked programming guidefrom the server system of available videos to a viewer wherein thevideos are selected based in part on information provided by the viewerin response to the survey and a plurality of viewer characteristicsfiles associated with viewers identified as being viewers who arecurrently viewing the same entertainment system together, wherein saidvideo selections are based at least in part on viewer ages included inthe viewer characteristics files, wherein the viewers who are currentlyviewing the same entertainment system together comprise viewercharacteristic categories in common and the ranked programming guide isfurther based on a weighted average of the viewers who are currentlyviewing the same entertainment system together.
 11. The method of claim10 wherein the viewer feedback additionally includes viewercharacteristic information.
 12. The method of claim 10 wherein theviewer characteristic information includes hardware capabilities of aviewer entertainment system.
 13. The system of claim 1, wherein thecontrol circuitry generates the viewer characteristic file usinginformation provided in response to a survey.
 14. The system of claim 1,wherein the provided survey is specifically designed to gatherparticular information about a video program presented to the viewer bythe viewer entertainment system.
 15. The system of claim 1, wherein theidentification of viewers who are currently viewing the sameentertainment system together is associated with a facial recognitionprocess.
 16. The viewer entertainment system of claim 1, wherein thecontrol circuitry is to provide an incentive associated with the surveybased on determining an amount of viewer feedback needed for abroadcast.
 17. The viewer entertainment system of claim 1, wherein theviewers who are currently viewing the same entertainment system togetherare simultaneously viewing the same entertainment system.
 18. The viewerentertainment system of claim 1 wherein the weighted average of theviewers who are currently viewing the same entertainment system togetheris based on ratings associated with the viewer characteristic categoriesin common.